home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / apps / math / ols.zoo / makefile < prev    next >
Makefile  |  1993-04-16  |  3KB  |  131 lines

  1.  
  2. # You have to setup two things:
  3. #
  4. # 1. Setting up for your (ANSI) C compiler:
  5. #    Configuring this for your C compile consists of (somehow)
  6. #    setting up the variables CC and CFLAGS.  I have supplied
  7. #    variables GCC+GCCFLAGS (which work with gcc) and
  8. #    variables LCC+LCCFLAGS (which work with Lucid C v2.0 for SPARC).
  9. #
  10. #    If your C doesn't have a stdlib.h, a minimal replacement is
  11. #    in the file stdlib.replacement.  Just mv it to ./stdlib.h
  12. #    and all should be well.
  13. #
  14. # 2. Directory assumptions:
  15. #    Next, setup directories BINDIR and MANDIR.  These are _only_ used
  16. #    when you say "make install".  MANDIR is the place where
  17. #    troff man pages are kept.
  18.  
  19. GCC = gcc
  20. GCCFLAGS = -O2
  21.  
  22. LCC = lcc
  23. LCCFLAGS = -XA -O4 -I.
  24.  
  25. CC = $(GCC)
  26. CFLAGS = $(GCCFLAGS)
  27.  
  28. BINDIR = /usr/local/bin
  29. MANDIR = /usr/man/man1
  30.  
  31. # Makefile should not need any changes from here onwards.
  32. # --------------------------------------------------------------------------- 
  33.  
  34. SRCLIST = f.c \
  35.     t.c \
  36.     fatal.c \
  37.     ran1.c \
  38.     misc.c \
  39.     split.c \
  40.     loadfile.c \
  41.     multiply.c \
  42.     lustuff.c \
  43.     ols.c \
  44.     olse.c \
  45.     pretty.c \
  46.     matalloc.c \
  47.     matfree.c \
  48.     valloc.c \
  49.     vfree.c
  50.  
  51. OLIST = $(SRCLIST:%.c=%.o)
  52.  
  53. ols.ttp : $(OLIST) Makefile
  54.     $(CC) $(CFLAGS) -o ols.ttp $(OLIST) -lpml
  55. #    xstrip ols.ttp
  56.  
  57. # Didn't write a simple make rule because I'm not sure what
  58. # aspects of Sun make are non-portable.
  59. f.o : f.c
  60.     $(CC) $(CFLAGS) -c f.c
  61. t.o : t.c
  62.     $(CC) $(CFLAGS) -c t.c
  63. fatal.o : fatal.c
  64.     $(CC) $(CFLAGS) -c fatal.c
  65. ran1.o : ran1.c
  66.     $(CC) $(CFLAGS) -c ran1.c
  67. misc.o : misc.c
  68.     $(CC) $(CFLAGS) -c misc.c
  69. split.o : split.c
  70.     $(CC) $(CFLAGS) -c split.c
  71. loadfile.o : loadfile.c
  72.     $(CC) $(CFLAGS) -c loadfile.c
  73. multiply.o : multiply.c
  74.     $(CC) $(CFLAGS) -c multiply.c
  75. lustuff.o : lustuff.c
  76.     $(CC) $(CFLAGS) -c lustuff.c
  77. olse.o : olse.c
  78.     $(CC) $(CFLAGS) -c olse.c
  79. pretty.o : pretty.c
  80.     $(CC) $(CFLAGS) -c pretty.c
  81. miscstring.o : miscstring.c
  82.     $(CC) $(CFLAGS) -c miscstring.c
  83. matalloc.o : matalloc.c
  84.     $(CC) $(CFLAGS) -c matalloc.c
  85. matfree.o : matfree.c
  86.     $(CC) $(CFLAGS) -c matfree.c
  87. valloc.o : valloc.c
  88.     $(CC) $(CFLAGS) -c valloc.c
  89. vfree.o : vfree.c
  90.     $(CC) $(CFLAGS) -c vfree.c
  91. ols.o : ols.c
  92.     $(CC) $(CFLAGS) -c ols.c
  93.  
  94. test : ols.ttp
  95.     @echo ""
  96.     @echo We will now do five tests.  Each involves running ols on 
  97.     @echo your machine  and comparing the result against what
  98.     @echo is expected.
  99.  
  100.     @echo ""; echo Test \#1\:; echo ""
  101.     ./ols data.1k > r1
  102.     -diff r1 r1.expected
  103.  
  104.     @echo ""; echo Test \#2\:; echo ""
  105.     ./ols data.1k -l '_constant x1 x2 y' > r2
  106.     -diff r2 r2.expected
  107.  
  108.     @echo ""; echo Test \#3\:; echo ""
  109.     ./ols data.1k -l '_constant x1 x2 y' -m 'y = x2 _constant' > r3
  110.     -diff r3 r3.expected
  111.  
  112.     @echo ""; echo Test \#4\:; echo ""
  113.     ./ols data.1k -l '_constant x1 x2 y' -m 'y = x2 _constant' -p > r4
  114.     -diff r4 r4.expected
  115.  
  116.     @echo ""; echo Test \#5\:; echo "";
  117.     ./ols data.1k -l '_constant x1 x2 y' -m 'y = x2 _constant' -epp > r5
  118.     -diff r5 r5.expected
  119.  
  120.     @echo ""
  121.     @echo If all these differences were numerically insignificant,
  122.     @echo then it is working ok.
  123.  
  124. clean :
  125.     rm -f ols.ttp *.o r?
  126.  
  127. install : ols.ttp
  128.     /bin/cp ols.ttp $(BINDIR)
  129.     /bin/cp ols.1 $(MANDIR)
  130.  
  131.